The quantity of digital information that is stored by digital storage systems, be it scientific data, photos or videos, is ever increasing. With the multitude of digital devices connected in networks such as the Internet, distributed systems for data storage, such as P2P (Peer-to-Peer) networks, and cloud data storage services, are an interesting alternative to centralized data storage, for storage of scientific data, photos, videos, etc. However, one of the most important problems that arise when using distributed data storage system is its reliability, and especially when an unreliable network such as the Internet is used. In an unreliable network, connections to data storage devices are temporarily or permanently lost, for many different reasons, such as device disconnection due to a powering off, entry into standby mode, connection failure, access right denial, or even physical breakdown. Solutions must therefore be found for large-scale deployment of fast and reliable distributed storage systems that uses the unreliable Internet network. According to prior art, the data to store are protected by devices and methods adding redundant data. According to prior art, this redundant data are either created by mere data replication, through storage of simple data copies, or, for increased storage quantity efficiency, in the form of storing the original data in a form that adds redundancy, for example through application of an erasure correcting coding algorithm such as Reed-Solomon. For protecting the distributed data storage against irremediable data loss it is then essential that the quantity of redundant data that exists in a distributed data storage system remains at all times sufficient to cope with an expected loss rate. As failures occur, some redundancy disappears. In particular, if a certain quantity of redundant data is lost, it is regenerated in due time to ensure this redundancy sufficiency, in a self-healing manner. In a first phase the self-healing mechanism monitors the distributed data storage system to detect device failures. In a second phase the system triggers regeneration of lost redundancy data on a set of spare devices. The lost redundancy is regenerated from the remaining redundancy. However, when redundant data is based on erasure correcting codes, regeneration of the redundant data is known as inducing a high repair cost, i.e. resulting in a large communication overhead. It requires downloading and decoding of a whole item of information, such as a file, in order to regenerate the lost redundancy. This high repair cost can however be reduced significantly when redundant data is based on so-called regenerating codes, issued from information theory; regeneration codes allow regeneration of lost redundancy without decoding. However, prior art solutions for regeneration of redundant data in distributed storage systems that are based on regeneration codes can still be optimized with regard to the impact on the network resources needed to regenerate lost redundancy.